草庐IT

Android View.OnKeyListener : click once, 执行两次

全部标签

c# - 执行文件复制/删除和移动之间的区别

有什么区别使用File.Copy()和File.Delete()复制和删除文件使用File.Move()移动文件在执行这些操作所需的权限方面有什么区别吗?非常感谢任何帮助。 最佳答案 File.Move方法可用于将文件从一个路径移动到另一个路径。此方法跨磁盘卷工作,如果源和目标相同,则不会抛出异常。您不能使用Move方法覆盖现有文件。如果您尝试通过将同名文件移动到该目录中来替换该文件,则会出现IOException。要克服这个问题,您可以结合使用复制和删除方法 关于c#-执行文件复制/删

c# - 是否有使用查询语法在 LINQ 查询中执行 ToList 的巧妙方法?

考虑下面的代码:StockcheckJobs=(fromjobin(fromstockcheckIteminMDC.StockcheckItemswheredistinctJobs.Contains(stockcheckItem.JobId)groupstockcheckItembynew{stockcheckItem.JobId,stockcheckItem.JobData.EngineerId}intojobsselectjobs).ToList()letdate=MJM.GetOrCreateJobData(job.Key.JobId).CompletedJob.Valueord

c# - 检查给定的可执行文件是否经过数字签名且有效?

在我的C#/.NET应用程序中,我必须检查给定的可执行文件是否经过数字签名(最好没有异常测试。)然后我需要检查其证书是否有效(基于已安装的根证书)以及文件内容是否对签名有效.BCL中的类太多了,我不知道从哪里开始以及使用什么,到目前为止我发现的任何东西都不能消除我的困惑...我想做这样的事情,没有如果可能P/Invoke:boolIsSignedFile(stringpath);CertGetCertificateFromSignedFile(stringpath);boolIsValidCertificate(Certcert)SigGetSignatureFromSignedFil

c# - 如何使用 PFX(Bouncy CaSTLe 或其他)以编程方式对可执行文件进行代码签名

我正在尝试确定使用BouncyCaSTLe、托管代码或来自C#的非托管代码对可执行文件进行代码签名的最佳方法。由于CAPICOM现在已被弃用,我想如果需要非托管地完成,mssign32.dll中的SignerSign方法之一是最好的方法。这个答案(https://stackoverflow.com/a/3952235/722078)看起来很接近,但它会生成一个.p7m文件,虽然看起来大小合适,但无法正确运行(显然在运行前重命名为.exe)。此处提问者(API/Librarytoreplacesigntool.exe)给出的解决方案似乎很有前途且管理得当,但就像TomCanham在下面的

c# - .Net 中嵌入两次的字符串常量?

假设我有一个简单的(最简单的?)C#程序:classProgram{staticvoidMain(){System.Console.WriteLine("Hello,world");}}如果我编译该代码并查看生成的.exe,我会按预期在exe镜像中看到“Hello,world”字符串。如果我将代码重构为:classProgram{conststringGreeting="Hello,world";staticvoidMain(){System.Console.WriteLine(Greeting);}}如果我编译该代码并查看生成的.exe,我会在exe镜像中看到两次“Hello,wor

c# - 为什么转换为 IEnumerable 的数组会忽略延迟执行?

我今天遇到了这个问题,但我不明白发生了什么:enumFoo{Zero,One,Two}voidMain(){IEnumerablea=newFoo[]{Foo.Zero,Foo.One,Foo.Two};IEnumerableb=a.ToList();PrintGeneric(a.Cast());PrintGeneric(b.Cast());Print(a.Cast());Print(b.Cast());}publicstaticvoidPrintGeneric(IEnumerablevalues){foreach(Tvalueinvalues){Console.WriteLine(v

c# - 从另一个 ClickOnce 应用程序启动 ClickOnce 应用程序

我的目标是真正实现单击一次(我猜是两次)启动我的ClickOnce应用程序。该应用程序有一些需要安装的先决条件。Microsoft提供的确保安装它们的正常方法包括让用户决定他是否具备先决条件,然后下载并安装一个“setup.exe”来安装它们并运行ClickOnce应用程序。这包括下载EXE文件(单击一次)、运行它(单击两次),然后在安装先决条件后,再次单击以运行ClickOnce应用程序。我正在尝试将此过程减少到一两次点击:-单击我网站上指向ClickOnce.application文件的链接。-再次点击运行。我制作了另一个ClickOnce应用程序,其中包含一个setup.exe。

c# - LINQ 如何在 using 语句中延迟执行

假设我有以下内容:privateIEnumerableMyFunc(parametera){using(MyDataContextdc=newMyDataContext){returndc.tablename.Select(row=>row.parameter==a);}}privatevoidUsingFunc(){varresult=MyFunc(newa());foreach(varrowinresult){//Dosomething}}根据文档,linq执行将推迟到我实际枚举结果时,该结果出现在foreach的行中。但是,using语句应强制在调用MyFunct()结束时可靠地

c# - 如何使用 Lucene.Net 执行 'contains' 搜索而不是 'starts with'

我们使用Lucene.NET在客户网站上实现全文搜索。搜索本身已经可以工作,但我们现在想要进行修改。目前,所有术语都附加了一个*,这会导致Lucene执行我将其归类为StartsWith搜索的操作。在未来,我们希望有一个搜索执行类似于Contains而不是StartsWith的搜索。我们使用Lucene.Net2.9.2.2标准分析器默认查询解析器示例:(Title:Orch*)匹配:Orchestra但是:(Title:rch*)不匹配:Orchestra我们希望第一个和第二个都匹配Orchestra。基本上我想要与这个问题中的问题完全相反,我不确定为什么Lucene对这个人执行Co

c# - 如何使用 C# 并行执行多个 "Pings"

我正在尝试计算一组服务器的平均往返时间。为了加快速度,我想并行执行ping。我编写了一个名为AverageRoundtripTime()的函数,它似乎可以工作,但是,由于我不太了解多线程,所以我想知道我所做的是否正确。请看一下我的代码,让我知道是否可以,或者是否有更好的方法来实现我想要的:publicvoidMain(){//Collectionofhosts.Listhosts=newList();//Add100hoststothecollection.for(Int32i=0;ihosts){//Collectionofthreads.Listthreads=newList();